package java_class_work.week05.genericity;

/**
 * @Auther: admin
 * @Date: 2022/10/11 14:53
 * @Description: 泛型类测试
 */

public class GenericityClassTest implements GenericInterface {
    public static void main(String[] args) {
        GenericityClass<String> sg = new GenericityClass<>("挖苦挖苦");
        printData(sg);
        GenericityClass<Integer> ig = new GenericityClass<>(10086);
        printData(ig);
    }

    @Override
    public void eat(Object food) {
        System.out.println(food);
    }

    /**
     * <?> 无限制通配符
     * <? extends E> 声明上限，表示参数化的类型可能是 指定的类型 或者 其子类
     * <? super E>   声明下限，表示参数化的类型可能是 指定的类型 或者 其父类
     * @param data
     */
    public static void printData(GenericityClass<?> data) {
        System.out.println(data.getData());
    }
}
